The modern communications era has brought about a tremendous expansion of wireline and wireless networks. Computer networks, television networks, and telephony networks are experiencing an unprecedented technological expansion, fueled by consumer demand. Wireless and mobile networking technologies have addressed related consumer demands, while providing more flexibility and immediacy of information transfer.
Current and future networking technologies continue to facilitate ease of information transfer and convenience to users by expanding the capabilities of mobile electronic devices. One area in which there is a demand to increase ease of information transfer relates to the synchronization of content on multiple devices. In this regard, given the ability for modern electronic devices to create and modify content, and also to distribute or share content, it is not uncommon for multiple copies of a particular content item to be stored at respective different locations within a network. In some cases, it may be desirable to ensure that the various different files or copies of a particular content item remain updated or synchronized with respect to each other. Accordingly, synchronization techniques have been developed to provide for data synchronization.
Numerous different protocols have been developed to handle synchronization. Some of these protocols allow what is referred to as “fast sync”, in which only changed files are synchronized instead of synchronizing all files on devices being synchronized. SyncML and ActiveSync are examples of such protocols. In order to accomplish fast synchronization, files at one device (e.g., the serving device) are typically mapped to files at the other device (e.g., the client device), for example, by linking identifiers of the files on both devices to each other. This enables, for each identified file, an indication to be provided as to whether the file has been changed and should therefore be synchronized. If a file requires synchronization, an updated copy of the file to be synchronized may be transferred from one device to the other. However, even in the fast sync context, synchronizing changed files can consume large amounts of time and bandwidth (particularly for large files).
Accordingly, it may be desirable to provide an improved mechanism by which to provide content synchronization.